今天是一些實作小練習,
稍微看了一些基礎函式庫,
跟著別人的文章用原生 net/http 做了會吐 json 的 http server、發 http request
看官方網站 Quick Start 把 proto 編譯成 go,並使用 grpc
go 沒有 try catch,
error 通常會是函數的第二個回傳值,
要自己去做處理,
導致下列程式碼頻繁出現在 go 的專案中:
if err != nil:
return
若想要減少重複的程式碼,可以包一層 wrapper 等等,詳見 err 是否 nil?
就照著操作一下稍微了解,然後感受一下 go 的 error handling XD
前面分散式系統有提到的 gRPC,就不多介紹了。
按照官網 Quick start 做了一下
明天來弄個 python client / go api server 來玩好了~
protoc --go-grpc_out=. --go-grpc_opt=paths=source_relative <proto檔名>
有些舊教學文編譯時噴錯,要在 proto file 中加入option go_package = "<package位置>"